home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / os2 / octa209s.zip / octave-2.09 / doc / interpreter / preface.tex < prev    next >
Text File  |  1997-08-13  |  10KB  |  251 lines

  1. @c Copyright (C) 1996, 1997 John W. Eaton
  2. @c This is part of the Octave manual.
  3. @c For copying conditions, see the file gpl.tex.
  4.  
  5. @node Preface, Introduction, Top, Top
  6. @unnumbered Preface
  7. @cindex contributors
  8. @cindex history
  9.  
  10. Octave was originally intended to be companion software for an
  11. undergraduate-level textbook on chemical reactor design being written by
  12. James B. Rawlings of the University of Wisconsin-Madison and John
  13. G. Ekerdt of the University of Texas.
  14.  
  15. Clearly, Octave is now much more than just another `courseware' package
  16. with limited utility beyond the classroom.  Although our initial goals
  17. were somewhat vague, we knew that we wanted to create something that
  18. would enable students to solve realistic problems, and that they could
  19. use for many things other than chemical reactor design problems.
  20.  
  21. There are those who would say that we should be teaching the students
  22. Fortran instead, because that is the computer language of engineering,
  23. but every time we have tried that, the students have spent far too much
  24. time trying to figure out why their Fortran code crashes and not enough
  25. time learning about chemical engineering.  With Octave, most students
  26. pick up the basics quickly, and are using it confidently in just a few
  27. hours.
  28.  
  29. Although it was originally intended to be used to teach reactor design,
  30. it has been used in several other undergraduate and graduate
  31. courses in the Chemical Engineering Department at the University of
  32. Texas, and the math department at the University of Texas has been using
  33. it for teaching differential equations and linear algebra as well.  If
  34. you find it useful, please let us know.  We are always interested to
  35. find out how Octave is being used in other places.
  36.  
  37. Virtually everyone thinks that the name Octave has something to do with
  38. music, but it is actually the name of a former professor of mine who
  39. wrote a famous textbook on chemical reaction engineering, and who was
  40. also well known for his ability to do quick `back of the envelope'
  41. calculations.  We hope that this software will make it possible for many
  42. people to do more ambitious computations just as easily.
  43.  
  44. Everyone is encouraged to share this software with others under the
  45. terms of the GNU General Public License (@pxref{Copying}) as described
  46. at the beginning of this manual.  You are also encouraged to help make
  47. Octave more useful by writing and contributing additional functions for
  48. it, and by reporting any problems you may have.
  49.  
  50. @menu
  51. * Acknowledgements::             
  52. * How You Can Contribute to Octave::  
  53. * Distribution::                
  54. @end menu
  55.  
  56. @node Acknowledgements, How You Can Contribute to Octave, Preface, Preface
  57. @unnumberedsec Acknowledgements
  58. @cindex acknowledgements
  59.  
  60. Many people have already contributed to Octave's development.  In
  61. addition to John W. Eaton, the following people have helped write parts
  62. of Octave or helped out in various other ways.
  63.  
  64. @c Once lp_solve has been added, don't forget to include the lp_solve
  65. @c author, and Kantor, for providing an example.
  66.  
  67. @itemize @bullet
  68. @item
  69. Thomas Baier @email{baier@@ci.tuwien.ac.at} wrote the original versions
  70. of @code{popen}, @code{pclose}, @code{execute}, @code{sync_system}, and
  71. @code{async_system}.
  72.  
  73. @item
  74. Karl Berry @email{karl@@cs.umb.edu} wrote the @code{kpathsea} library
  75. that allows Octave to recursively search directory paths for function
  76. and script files.
  77.  
  78. @item
  79. Georg Beyerle @email{gbeyerle@@awi-potsdam.de} contributed code to save
  80. values in @sc{Matlab}'s @file{.mat}-file format, and has provided many
  81. useful bug reports and suggestions.
  82.  
  83. @item
  84. John Campbell @email{jcc@@bevo.che.wisc.edu} wrote most of the file and
  85. C-style input and output functions.
  86.  
  87. @item
  88. Brian Fox @email{bfox@@gnu.ai.mit.edu} wrote the @code{readline} library
  89. used for command history editing, and the portion of this manual that
  90. documents it.
  91.  
  92. @item
  93. Klaus Gebhardt @email{gebhardt@@crunch.ikp.physik.th-darmstadt.de}
  94. ported Octave to OS/2 and worked with Michel Juillard
  95. @email{juillard@@msh-paris.fr} on the port to DOS.
  96.  
  97. @item
  98. A. Scottedward Hodel @email{A.S.Hodel@@eng.auburn.edu} contributed a number
  99. of functions including @code{expm}, @code{qzval}, @code{qzhess},
  100. @code{syl}, @code{lyap}, and @code{balance}.
  101.  
  102. @item
  103. Kurt Hornik @email{Kurt.Hornik@@ci.tuwien.ac.at} provided the
  104. @code{corrcoef}, @code{cov}, @code{fftconv}, @code{fftfilt}, @code{gcd},
  105. @code{lcd}, @code{kurtosis}, @code{null}, @code{orth}, @code{poly},
  106. @code{polyfit}, @code{roots}, and @code{skewness} functions, supplied
  107. documentation for these and numerous other functions, rewrote the Emacs
  108. mode for editing Octave code and provided its documentation, and has
  109. helped tremendously with testing.  He has also been a constant source of
  110. new ideas for improving Octave.
  111.  
  112. @item
  113. Phil Johnson @email{johnsonp@@nicco.sscnet.ucla.edu} has helped to make
  114. Linux releases available.
  115.  
  116. @item
  117. Michel Juillard @email{juillard@@msh-paris.fr} ported Octave to DOS
  118. systems.
  119.  
  120. @item
  121. Friedrich Leisch @email{leisch@@ci.tuwien.ac.at} provided the
  122. @code{mahalanobis} function.
  123.  
  124. @item
  125. Ken Neighbors @email{wkn@@leland.stanford.edu} has provided many useful
  126. bug reports and comments on @sc{Matlab} compatibility.
  127.  
  128. @item
  129. Rick Niles @email{niles@@axp745.gsfc.nasa.gov} rewrote Octave's plotting
  130. functions to add line styles and the ability to specify an unlimited
  131. number of lines in a single call.  He also continues to track down odd
  132. incompatibilities and bugs.
  133.  
  134. @item
  135. Mark Odegard @email{meo@@sugarland.unocal.com} provided the initial
  136. implementation of @code{fread}, @code{fwrite}, @code{feof}, and
  137. @code{ferror}.
  138.  
  139. @item
  140. Tony Richardson @email{tony@@guts.biomed.uakron.edu} wrote Octave's
  141. image processing functions as well as most of the original polynomial
  142. functions.
  143.  
  144. @item
  145. R. Bruce Tenison @email{Bruce.Tenison@@eng.auburn.edu} wrote the
  146. @code{hess} and @code{schur} functions.
  147.  
  148. @item
  149. Teresa Twaroch @email{twaroch@@ci.tuwien.ac.at} provided the functions
  150. @code{gls} and @code{ols}.
  151.  
  152. @item
  153. Andreas Weingessel @email{Andreas.Weingessel@@ci.tuwien.ac.at} wrote the
  154. audio functions @code{lin2mu}, @code{loadaudio}, @code{mu2lin},
  155. @code{playaudio}, @code{record}, @code{saveaudio}, and @code{setaudio}.
  156.  
  157. @item
  158. Fook Fah Yap @email{ffy@@eng.cam.ac.uk} provided the @code{fft} and
  159. @code{ifft} functions and valuable bug reports for early versions.
  160. @end itemize
  161.  
  162. Special thanks to the following people and organizations for
  163. supporting the development of Octave:
  164.  
  165. @itemize @bullet
  166. @item
  167. Digital Equipment Corporation, for an equipment grant as part of their
  168. External Research Program.
  169.  
  170. @item
  171. Sun Microsystems, Inc., for an Academic Equipment grant.
  172.  
  173. @item
  174. International Business Machines, Inc., for providing equipment as part
  175. of a grant to the University of Texas College of Engineering.
  176.  
  177. @item
  178. Texaco Chemical Company, for providing funding to continue the
  179. development of this software.
  180.  
  181. @item
  182. The University of Texas College of Engineering, for providing a
  183. Challenge for Excellence Research Supplement, and for providing an
  184. Academic Development Funds grant.
  185.  
  186. @item
  187. The State of Texas, for providing funding through the Texas
  188. Advanced Technology Program under Grant No. 003658-078.
  189.  
  190. @item
  191. Noel Bell, Senior Engineer, Texaco Chemical Company, Austin Texas.
  192.  
  193. @item
  194. James B. Rawlings, Professor, University of Wisconsin-Madison,
  195. Department of Chemical Engineering.
  196.  
  197. @item
  198. Richard Stallman, for writing GNU.
  199. @end itemize
  200.  
  201. This project would not have been possible without the GNU software used
  202. in and used to produce Octave.
  203.  
  204. @node How You Can Contribute to Octave, Distribution, Acknowledgements, Preface
  205. @unnumberedsec How You Can Contribute to Octave
  206. @cindex contributing to Octave
  207. @cindex funding Octave development
  208.  
  209. There are a number of ways that you can contribute to help make Octave a
  210. better system.  Perhaps the most important way to contribute is to write
  211. high-quality code for solving new problems, and to make your code freely
  212. available for others to use.
  213.  
  214. If you find Octave useful, consider providing additional funding to
  215. continue its development.  Even a modest amount of additional funding
  216. could make a significant difference in the amount of time that is
  217. available for development and support.
  218.  
  219. If you cannot provide funding or contribute code, you can still help
  220. make Octave better and more reliable by reporting any bugs you find and
  221. by offering suggestions for ways to improve Octave.  @xref{Trouble}, for
  222. tips on how to write useful bug reports.
  223.  
  224. @node Distribution,  , How You Can Contribute to Octave, Preface
  225. @unnumberedsec Distribution
  226. @cindex distribution of Octave
  227.  
  228. Octave is @dfn{free} software.  This means that everyone is free to
  229. use it and free to redistribute it on certain conditions.  Octave is not
  230. in the public domain.  It is copyrighted and there are restrictions on
  231. its distribution, but the restrictions are designed to ensure that
  232. others will have the same freedom to use and redistribute Octave that
  233. you have.  The precise conditions can be found in the GNU General Public
  234. License that comes with Octave and that also appears in @ref{Copying}.
  235.  
  236. Octave is available on CD-ROM with various collections of other free
  237. software, and from the Free Software Foundation.  Ordering a copy of
  238. Octave from the Free Software Foundation helps to fund the development
  239. of more free software.  For more information, write to
  240.  
  241. @quotation
  242. Free Software Foundation@*
  243. 59 Temple Place---Suite 330@*
  244. Boston, MA 02111--1307@*
  245. USA
  246. @end quotation
  247.  
  248. Octave is also available on the Internet from
  249. @url{ftp://ftp.che.wisc.edu/pub/octave}, and additional information is
  250. available from @url{http://www.che.wisc.edu/octave}.
  251.